Контролери в Spring Boot (@RestController, @RequestMapping)
У Spring Boot контролери використовуються для обробки HTTP-запитів та формування відповідей. Вони є основою для створення REST API.
1. Анотація @RestController
Анотація @RestController поєднує в собі @Controller та @ResponseBody, що означає,
що всі методи автоматично повертають JSON або XML.
@RestController
public class HelloController {
@GetMapping("/hello")
public String sayHello() {
return "Hello, Spring Boot!";
}
}
2. Анотація @RequestMapping
Анотація @RequestMapping використовується для визначення шляху для контролера або окремих методів.
@RestController
@RequestMapping("/api")
public class ApiController {
@GetMapping("/status")
public String getStatus() {
return "Service is running";
}
}
3. Використання @GetMapping, @PostMapping
Spring Boot підтримує спеціальні анотації для обробки HTTP-запитів:
- @GetMapping – для обробки GET-запитів.
- @PostMapping – для обробки POST-запитів.
- @PutMapping – для оновлення ресурсів.
- @DeleteMapping – для видалення ресурсів.
4. Приклад контролера з усіма видами запитів
@RestController
@RequestMapping("/users")
public class UserController {
@GetMapping
public String getUsers() {
return "List of users";
}
@PostMapping
public String createUser() {
return "User created";
}
@PutMapping("/{id}")
public String updateUser(@PathVariable Long id) {
return "User " + id + " updated";
}
@DeleteMapping("/{id}")
public String deleteUser(@PathVariable Long id) {
return "User " + id + " deleted";
}
}
Назад Далі